1. Field of the Invention
The present invention relates to a computer program product, an information processing apparatus, a printer, and a system for adding a printer operation controlling function to a printer driver.
2. Description of the Related Art
A system in which a host computer, a client computer, a printer, and the alike are connected to a network such as a local area network (LAN) has been conventionally known. In such a system, the client computer uses the host computer as a print server, and can cause the host computer to execute a print over the network.
In such a system, a printer driver corresponding to the printer needs to be installed on each of the host computer and the client computer. In a scenario where a number of client computers executing prints using the printer are connected to the network, a work of installing the printer driver to each of the client computer requires a high cost.
Therefore, a mechanism for allowing the printer driver to be easily installed to the client computer has conventionally been provided. For example, in the Windows (registered trademark) that is an operating system (OS) developed by Microsoft Corporation in the United States, such a mechanism is provided as a function referred to as “Point & Print”.
In the “Point & Print” function, when a shared printer on the host computer is selected using an application programming interface (API) on the client computer, the client computer and the host computer exchange information about functions of the selected shared printer, information about an OS on the client computer, and the like. The host computer then selects a printer driver based on the information obtained by way of the exchange, and transfers a set of files that makes up the selected printer driver to the client computer over the network. The client computer copies the set of files making up the printer driver and transferred over the network to a predetermined folder, for example, registers the same to the OS, and installs the same. In this manner, the client computer becomes able to cause the shared printer connected over the network to print.
A mechanism called a plug-in for allowing an additional function to be attached or removed freely to a base program is widely known. By incorporating plug-in software for adding a predetermined function into application software, the function not included in the application software by default or a more advanced function becomes available.
Recently, the number of examples in which not only in general application software but also a printer driver includes such a plug-in mechanism has been increasing. By allowing a printer driver to have the plug-in mechanism, a printing function for the printer can be added or removed easily without upgrading the printer driver itself.
Let us now consider a scenario in which the plug-in mechanism is used in the system in which the host computer, the client computer, and the printer are connected over the network. In this scenario, to utilize the function of the plug-in software installed in the host computer on the client computer, the same plug-in software installed in the host computer needs to be installed on the client computer.
Japanese Patent Application Laid-open No. 2005-208895 discloses an installer that manages an addition and a removal of plug-in software to printer driver that has been installed on a host computer, as well as that manages an addition and a removal of the plug-in software to a client computer connected to the host computer over the network.
According to Japanese Patent Application Laid-open No. 2005-208895, upon adding plug-in software to the printer driver on the host computer, the installer makes a copy of the plug-in software to be added to a predetermined directory for installing the printer driver on the host computer. At the same time, the installer temporarily stops the printing queue on the host computer, and restarts the printing service.
The host computer then notifies to each of the client computer that the plug-in software has been added, and the host computer transfers the files of the added plug-in software to each of the client computers.
The installer also operates on the client computer to make a copy of the plug-in software files that is to be added and has been transferred over the network to a predetermined directory for installing the printer driver on the client computer.
However, in the printer driver having a conventional plug-in mechanism, it has been difficult to cause the plug-in software to be installed automatically.
This point will be explained using the example of the “Point & Print” function. In the “Point & Print”, only the files specified in a driver information file (inf file) 210, as an example illustrated in FIG. 13, describing configuration information of the printer driver are downloaded and copied from the host computer to the client computer. In the example illustrated in FIG. 13, a list of the files making up the printer driver is described in a file list section 211 in the driver information file 210.
The driver information file 210 is used when the printer driver is installed, and describes therein configuration information of a package of the printer driver, that is, information such as the names of the files making up the printer driver and an installing directory. In other words, as the example in FIG. 14 indicates, when a printer driver 202 is copied from a host computer 200 to a client computer 201, the host computer 200 refers to the descriptions in the driver information file 210 to select files that are to be transferred to the client computer 201. The OS manages the configuration information described in the driver information file 210 until the printer driver is uninstalled.
The plug-in software extends the functions of the printer driver that is already installed. Therefore, the configuration information of the plug-in software, such as the names of files making up the plug-in software, is not described in the driver information file 210 that is used when the printer driver is installed.
Even if the printer driver has the plug-in mechanism, the printer driver cannot change the configuration information managed by the OS. In other words, the printer driver cannot change the contents of the driver information file 210. Therefore, the plug-in software files that are added after the printer driver 202 has been installed to the host computer 200 are not copied to the client computer 201 by way of the “Point & Print” function provided by the OS.
Therefore, as illustrated in the example in FIG. 15, even if a printer driver 202′ on the host computer 200 has functions thereof extended by way of plug-in software, the package of the printer driver 202, which is the one before the function is added, is downloaded and installed to the client computer 201 following the driver information file 210.
On the contrary, Japanese Patent Application Laid-open No. 2005-208895 solves this problem by allowing the installer to manage the files that are not described in a driver information file and added as plug-in software. In other words, in Japanese Patent Application Laid-open No. 2005-208895, when the plug-in software is added to the host computer, the installer notifies the same to the client computer, and transfers the plug-in software that is added to the client computer.
However, according to Japanese Patent Application Laid-open No. 2005-208895, the plug-in software file cannot be copied to the client computer by way of the “Point & Print” function provided in the OS by default alone, and the installer that is a dedicated module that is independent from the OS needed to be used.
Furthermore, because the module that is independent from the OS is used, compatibility with the OS is sacrificed, and it would be difficult to support a version change of the OS, for example.